package formas.dosd;

import java.awt.Graphics;
import javax.swing.*;
import formas.Dibujable;
import formas.Pantalla;
import formas.Punto;
import formas.Tablero;

public class Tablero2d extends Pantalla{
     
	public Tablero2d(int ancho, int largo) {
		super(ancho, largo,null);
	}
	
	// Dibuja la pantalla con tableros y cada uno de sus dibujos
	public void dibujar(){
		JFrame f = new JFrame("Dibujos") {
			public void paint(Graphics g) {
				
				g.drawRect(puntoInicial.getCordenadaX(),puntoInicial.getCordenadaY(), getAltura(), getBase());				
				
				for(Tablero tablero: getTableros()){
					int cordenadaXtablero = tablero.getPuntoInicial().getCordenadaX();
					int cordenadaYtablero = tablero.getPuntoInicial().getCordenadaY();
					int baseTablero = tablero.getPuntoFinal().getCordenadaX();
					int alturaTablero = tablero.getPuntoFinal().getCordenadaY();
					g.drawRect(cordenadaXtablero, cordenadaYtablero, baseTablero, alturaTablero);				
			
					for(Dibujable dibujable: tablero.getDibujos()){

						Punto puntoInicialDibujo = dibujable.getPuntoInicial();
						Punto puntoInicialTablero = tablero.getPuntoInicial();
						int cordenadaX = puntoInicialDibujo.getCordenadaX() + puntoInicialTablero.getCordenadaX();
						int cordenadaY = puntoInicialDibujo.getCordenadaY() + puntoInicialTablero.getCordenadaY();
						int base = dibujable.getPuntoFinal().getCordenadaX() - puntoInicialDibujo.getCordenadaX();
						int altura = dibujable.getPuntoFinal().getCordenadaY() - puntoInicialDibujo.getCordenadaY();
						g.drawRect(cordenadaX, cordenadaY, base, altura);				
					}
					
				}
			}		
		};
		f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		f.setSize(300, 300);
		f.setExtendedState(JFrame.MAXIMIZED_BOTH);
		f.setVisible(true);	
		
	}
}